Recently, there has been an increasing effort and activity to automate workflow processes in office environments. Typically, workflow management tools define workflow primarily in terms of tasks and roles.
Such tools, often include a visual diagramming tool that allows the user to specify these tasks and roles, from the beginning of a project to its end. Thus, a user can define a diagram with a plurality of symbols or diagram “nodes” to represent work functions in an organization, and to map the flow of documents or other work from one function to the next. This conventional approach may be easy for end-users to relate to, since each user's respective function can be easily located on the diagram. However, one problem with this workflow tools is that the workflow from or to a given function tends to get very complex. Routing iterations, status changes, and the effects of external events or operations can get too cumbersome to account for and even represent visually.
Furthermore, the prior workflow management tools do not provide mechanisms to ensure that work assignments are concluded without falling through the cracks.
Another disadvantage with prior art systems is that users who design the workflow are not enabled to iteratively refine the process until an optimal workflow is achieved. Typically, a workflow has to be worked out at the outset and provided to the workflow tool. To this end, it is very difficult, if not impossible, to detect errors in the workflow rules defined by such systems.
Thus, there is a need for a workflow management system and method that enables users to efficiently and easily create workflows that can be iteratively refined and revised.